Beacon Slot Allocation in Prime

ABSTRACT

Systems and methods for efficiently allocating beacon slot among multiple nodes on multiple levels within a power line communication network are described. In various implementations, these systems and methods may be applicable to Power Line Communications (PLC). For example, a method may include performing, by a communications device, assigning beacon transmission times to nodes within the communication device&#39;s network. The assigned beacon transmission times comprise a beacon slot and frame pattern. The beacon slot and frame pattern ensure that each node does not transmit a beacon in a beacon slot that is adjacent to a beacon slot assigned to a parent or child node. A beacon transmission slot is reserved for a base node in every frame. The frames may be organized into thirty-two-frame superframes, wherein each frame comprises a base node beacon slot and four switch node beacon slots.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of the filing date of U.S.Provisional Patent Application No. 61/547,396, which is titled “BeaconSlot Allocation in PRIME” and was filed on Oct. 14, 2011, thedisclosures of which are hereby incorporated by reference herein intheir entirety.

BACKGROUND

There are several different types of communication networks availabletoday. For example, power line communications (PLC) include systems forcommunicating data over the same medium (i.e., a wire or conductor) thatis also used to transmit electric power to residences, buildings, andother premises. Once deployed, PLC systems may enable a wide array ofapplications, including, for example, automatic meter reading and loadcontrol (i.e., utility-type applications), automotive uses (e.g.,charging electric cars), home automation (e.g., controlling appliances,lights, etc.), and/or computer networking (e.g., Internet access), toname only a few.

For each different type of communications network, differentstandardizing efforts are commonly undertaken throughout the world. Forinstance, in the case of PLC communications may be implementeddifferently depending upon local regulations, characteristics of localpower grids, etc. An example PLC standardization effort includes, forexample, the Powerline-Related Intelligent Metering Evolution (PRIME)standard designed for OFDM-based (Orthogonal Frequency-DivisionMultiplexing) communications. The PRIME standard requires the base nodeas well as switch nodes to transmit beacons periodically. While thestandard requires beacon transmission, the beacon slot allocationalgorithm is left to the service provider's implementation.

SUMMARY

Systems and methods to efficiently allocate beacon slot among multiplenodes on multiple levels within a power line communication network aredescribed. In an illustrative embodiment, a method may includeperforming, by a communications device, assigning beacon transmissiontimes to nodes within the communication device's network. The assignedbeacon transmission times comprise a beacon slot and frame pattern. Thebeacon slot and frame pattern ensure that each node does not transmit abeacon in a beacon slot that is adjacent to a beacon slot assigned to aparent or child node.

A beacon transmission slot is reserved for a base node in every frame.The frames may be organized into thirty-two-frame superframes, whereineach frame comprises a base node beacon slot and four switch node beaconslots.

If there are no more than thirty-two switch nodes in the network, thenevery other slot in each frame is assigned to a different node until allnodes have a designated beacon transmission time. In one embodiment, asecond beacon slot and fourth beacon slot in each frame is assigned to adifferent node until all nodes have a designated beacon transmissionslot and pattern. A first beacon slot and a third beacon slot in eachframe are reserved as unassigned.

If there are no more than sixty-four switch nodes in the network, then athird beacon slot in each frame is assigned to a different node on afirst level below the base node. A first beacon slot, a second beaconslot, and a fourth beacon slot in each frame are reserved as unassigned.A first switch node beacon slot and a third switch node beacon slot ineach frame may be assigned to a different node on a second level belowthe base node. When a parent node on the first level has a child node onthe second level, and when both the parent node and the child node areassigned to the same beacon slot, then different frame patterns may beused to avoid beacon transmission conflicts. A first frame pattern isassigned to the parent node, and a second frame pattern is assigned tothe child node, wherein the second frame pattern prevents the child nodefrom transmitting a beacon in the same frame as the parent node.

If there are more than sixty-four switch nodes in the network then thebeacon slot and frame patterns may be reused and assigned beacon toanother node that is at least n-levels away, such as two levels away.Alternatively, or additionally, the beacon slot and frame patternassigned to a first node may also be assigned to a second node that ison the same level below the base node as the first node, if the firstnode and the second node do not share a same parent node.

The solution described herein preserves the parent-child switch noderelationship by not allocating the same slot and pattern for beacontransmissions. It also allows for sufficient turnaround time betweenreception and transmission of beacon at a switch node, and therebymitigates interference from other beacon transmissions.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described the invention(s) in general terms, reference willnow be made to the accompanying drawings, wherein:

FIG. 1 is a diagram of a PLC system according to some embodiments.

FIG. 2 is a block diagram of a PLC device or modem according to someembodiments.

FIG. 3 is a block diagram of a PLC gateway according to someembodiments.

FIG. 4 is a block diagram of a PLC data concentrator according to someembodiments.

FIG. 5 illustrates a subnetwork according to an example embodiment.

FIG. 6 illustrates the structure of a MAC frame according to oneembodiment.

FIG. 7 illustrates an example distribution of thirty-two switch nodesusing slots 2 and 4.

FIG. 8 illustrates a portion of a subnetwork having more than thirty-twoswitch nodes spread across multiple levels.

FIG. 9 is a table illustrating how switch nodes on multiple levels canbe distributed to support more than thirty-two switch nodes.

FIG. 10 illustrates another example of a beacon slot allocation policyaccording to another embodiment using slot, time, and specialseparation.

DETAILED DESCRIPTION

The inventions now will be described more fully hereinafter withreference to the accompanying drawings. The inventions may, however, beembodied in many different forms and should not be construed as limitedto the embodiments set forth herein. Rather, these embodiments areprovided so that this disclosure will be thorough and complete, and willfully convey the scope of the inventions to a person of ordinary skillin the art. A person of ordinary skill in the art may be able to use thevarious embodiments of the inventions.

In various embodiments, the systems and methods described herein may beapplicable to a wide variety of communication environments, including,but not limited to, those involving Power Line Communications (PLC),wireless communications (e.g., cellular, Wi-Fi, WiMax, etc.), wiredcommunications (e.g., Ethernet, etc.), or the like. For ease ofexplanation, several examples discussed below are described specificallyin the context of PLC. As a person of ordinary skill in the art willrecognize in light of this disclosure, however, certain techniques andprinciples disclosed herein may also be used in other communicationenvironments.

FIG. 1 depicts an electric power distribution system according to someexample embodiments. Medium voltage (MV) power lines 103 from substation101 typically carry voltage in the tens of kilovolts range. Transformer104 steps the MV power down to low voltage (LV) power on LV lines 105,carrying voltage in the range of 100-240 VAC. Transformer 104 istypically designed to operate at very low frequencies in the range of50-60 Hz. Transformer 104 does not typically allow high frequencies,such as signals greater than 100 KHz, to pass between LV lines 105 andMV lines 103. LV lines 105 feed power to customers via meters 106 a-n,which are typically mounted on the outside of residences 102 a-n.Although referred to as “residences,” premises 102 a-n may include anytype of building, facility or location where electric power is receivedand/or consumed. A breaker panel, such as panel 107, provides aninterface between meter 106 n and electrical wires 108 within residence102 n. Electrical wires 108 deliver power to outlets 110, switches 111and other electric devices within residence 102 n.

The power line topology illustrated in FIG. 1 may be used to deliverhigh-speed communications to residences 102 a-n. In someimplementations, power line communications modems or gateways 112 a-nmay be coupled to LV power lines 105 at meter 106 a-n. PLCmodems/gateways 112 a-n may be used to transmit and receive data signalsover MV/LV lines 103/105. Such data signals may be used to supportmetering and power delivery applications (e.g., smart gridapplications), communication systems, high speed Internet, telephony,video conferencing, and video delivery, to name a few. By transportingtelecommunications and/or data signals over a power transmissionnetwork, there is no need to install new cabling to each subscriber 102a-n. Thus, by using existing electricity distribution systems to carrydata signals, significant cost savings are possible.

An illustrative method for transmitting data over power lines may use,for example, a carrier signal having a frequency different from that ofthe power signal. The carrier signal may be modulated by the data, forexample, using an orthogonal frequency division multiplexing (OFDM)scheme or the like.

PLC modems or gateways 112 a-n at residences 102 a-n use the MV/LV powergrid to carry data signals to and from a base node, such as PLC dataconcentrator 114, without requiring additional wiring. Data concentrator114 may be coupled to either MV line 103 or LV line 105. Modems orgateways 112 a-n may support applications such as high-speed broadbandInternet links, narrowband control applications, low bandwidth datacollection applications, or the like. In a home environment, forexample, modems or gateways 112 a-n may further enable home and buildingautomation in heat and air conditioning, lighting, and security. Also,PLC modems or gateways 112 a-n may enable AC or DC charging of electricvehicles and other appliances. An example of an AC or DC charger isillustrated as PLC device 113. Outside the premises, power linecommunication networks may provide street lighting control and remotepower meter data collection.

One or more data concentrators 114 may be coupled to control center 130(e.g., a utility company) via network 120. Network 120 may include, forexample, an IP-based network, the Internet, a cellular network, a WiFinetwork, a WiMax network, or the like. As such, control center 130 maybe configured to collect power consumption and other types of relevantinformation from gateway(s) 112 and/or device(s) 113 throughconcentrator(s) 114. Additionally or alternatively, control center 130may be configured to implement smart grid policies and other regulatoryor commercial rules by communicating such rules to each gateway(s) 112and/or device(s) 113 through concentrator(s) 114.

In some embodiments, each concentrator 114 may be seen as a base nodefor a PLC domain, each such domain comprising downstream PLC devicesthat communicate with control center 130 through a respectiveconcentrator 114. For example, in FIG. 1, device 106 a-n, 112 a-n, and113 may all be considered part of the PLC domain that has dataconcentrator 114 as its base node; although in other scenarios otherdevices may be used as the base node of a PLC domain. In a typicalsituation, multiple nodes may be deployed in a given PLC network, and atleast a subset of those nodes may be tied to a common clock through abackbone (e.g., Ethernet, digital subscriber loop (DSL), etc.). Further,each PLC domain may be coupled to MV line 103 through its own distincttransformer similar to transformer 104.

Still referring to FIG. 1, meter 106, gateways 112, PLC device 113, anddata concentrator 114 may each be coupled to or otherwise include a PLCmodem or the like. The PLC modem may include transmitter and/or receivercircuitry to facilitate the device's connection to power lines 103, 105,and/or 108.

FIG. 2 is a block diagram of PLC device or modem 113 according to someembodiments. As illustrated, AC interface 201 may be coupled toelectrical wires 108 a and 108 b inside of premises 112 n in a mannerthat allows PLC device 113 to switch the connection between wires 108 aand 108 b off using a switching circuit or the like. In otherembodiments, however, AC interface 201 may be connected to a single wire108 (i.e., without breaking wire 108 into wires 108 a and 108 b) andwithout providing such switching capabilities. In operation, ACinterface 201 may allow PLC engine 202 to receive and transmit PLCsignals over wires 108 a-b. As noted above, in some cases, PLC device113 may be a PLC modem. Additionally or alternatively, PLC device 113may be a part of a smart grid device (e.g., an AC or DC charger, ameter, etc.), an appliance, or a control module for other electricalelements located inside or outside of premises 112 n (e.g., streetlighting, etc.).

PLC engine 202 may be configured to transmit and/or receive PLC signalsover wires 108 a and/or 108 b via AC interface 201 using a particularchannel or frequency band. In some embodiments, PLC engine 202 may beconfigured to transmit OFDM signals, although other types of modulationschemes may be used. As such, PLC engine 202 may include or otherwise beconfigured to communicate with metrology or monitoring circuits (notshown) that are in turn configured to measure power consumptioncharacteristics of certain devices or appliances via wires 108, 108 a,and/or 108 b. PLC engine 202 may receive such power consumptioninformation, encode it as one or more PLC signals, and transmit it overwires 108, 108 a, and/or 108 b to higher-level PLC devices (e.g., PLCgateways 112 n, data concentrators 114, etc.) for further processing.Conversely, PLC engine 202 may receive instructions and/or otherinformation from such higher-level PLC devices encoded in PLC signals,for example, to allow PLC engine 202 to select a particular frequencyband in which to operate.

FIG. 3 is a block diagram of PLC gateway 112 according to someembodiments. As illustrated in this example, gateway engine 301 iscoupled to meter interface 302, local communication interface 303, andfrequency band usage database 304. Meter interface 302 is coupled tometer 106, and local communication interface 304 is coupled to one ormore of a variety of PLC devices such as, for example, PLC device 113.Local communication interface 304 may provide a variety of communicationprotocols such as, for example, ZIGBEE, BLUETOOTH, WI-FI, WI-MAX,ETHERNET, etc., which may enable gateway 112 to communicate with a widevariety of different devices and appliances. In operation, gatewayengine 301 may be configured to collect communications from PLC device113 and/or other devices, as well as meter 106, and serve as aninterface between these various devices and PLC data concentrator 114.Gateway engine 301 may also be configured to allocate frequency bands tospecific devices and/or to provide information to such devices thatenable them to self-assign their own operating frequencies.

In some embodiments, PLC gateway 112 may be disposed within or nearpremises 102 n and serve as a gateway to all PLC communications toand/or from premises 102 n. In other embodiments, however, PLC gateway112 may be absent and PLC devices 113 (as well as meter 106 n and/orother appliances) may communicate directly with PLC data concentrator114. When PLC gateway 112 is present, it may include database 304 withrecords of frequency bands currently used, for example, by various PLCdevices 113 within premises 102 n. An example of such a record mayinclude, for instance, device identification information (e.g., serialnumber, device ID, etc.), application profile, device class, and/orcurrently allocated frequency band. As such, gateway engine 301 may usedatabase 304 in assigning, allocating, or otherwise managing frequencybands assigned to its various PLC devices.

FIG. 4 is a block diagram of a PLC data concentrator according to someembodiments. Gateway interface 401 is coupled to data concentratorengine 402 and may be configured to communicate with one or more PLCgateways 112 a-n. Network interface 403 is also coupled to dataconcentrator engine 402 and may be configured to communicate withnetwork 120. In operation, data concentrator engine 402 may be used tocollect information and data from multiple gateways 112 a-n beforeforwarding the data to control center 130. In cases where PLC gateways112 a-n are absent, gateway interface 401 may be replaced with a meterand/or device interface (now shown) configured to communicate directlywith meters 116 a-n, PLC devices 113, and/or other appliances. Further,if PLC gateways 112 a-n are absent, frequency usage database 404 may beconfigured to store records similar to those described above withrespect to database 304.

Network elements that communicate using the PRIME standard may bearranged in subnetworks. A subnetwork has a single base node and one ormore services nodes that branch from the base node in one or morelevels. The base node acts as a master node and provides the subnetworkwith connectivity. The base node manages the subnetwork resources andconnections. The base node is initially the only node in the subnetworkand other nodes follow a registration process to enroll on thesubnetwork.

Service nodes may operate in one of three functional states:disconnected, terminal, or switch. Service nodes start in a disconnectedstate during which the node is not capable of communicating or switchingthe traffic of another node. In the disconnected state, a service nodesearches for an operational network and attempts to register on thenetwork. In the terminal state, a service node is capable ofcommunicating its traffic, but it is not capable of switching trafficfor any other node. In the switch state, a service node is capable ofperforming all terminal functions and is capable of forwarding data toand from other devices on the subnetwork.

Each service node has a level in the subnetwork topology. The nodes thatare connected directly to the base node have level 1. The level of anyservice node not directly connected to the base node is the level of itsrespective switch node plus one.

FIG. 5 illustrates a subnetwork 500 according to an example embodiment.Base node 501 is connected to nodes 502-505, which are on level 1 in thesubnetwork. Nodes 502 and 504 have been promoted to switch node, andnodes 503 and 505 operate as service nodes. Nodes 506 and 507 are onlevel 2 of the subnetwork and connect through switch node 502. Node 508is also on level 2 and is connected through switch node 504. Node 507has been promoted to switch node and provides a connection to servicenode 509, which is on level 3 of the subnetwork.

Multicast and broadcast addresses are used for transmitting datainformation within subnetwork 500. There are several broadcast andmulticast address types, depending on the context associated with thetraffic flow. A broadcast identifier is used as a destination addressfor packets that should reach every node of the subnetwork. A multicastidentifier is used as a destination address for multicast groups. Aunicast address refers to a particular node within the subnetwork withan identifier that match the address fields in the unicast address.

A MAC frame defines a time for channel usage. A frame is comprised ofone or more beacons, a shared contention period (SCP), and zero or onecontention free period (CFP). The transmission of a beacon by the basenode acts as delimiter for the MAC frames.

FIG. 6 illustrates the structure of a MAC frame according to oneembodiment. A beacon is always MACBeaconLength symbols long, and theframe is MACFrameLength symbols long. A superframe comprises thirty-twoconsecutive frames.

A service node starts in a disconnected state. The only functionperformed in the disconnected state is reception of any beacons on thechannel. Each service node may maintain a switch table that is updatedwith the reception of a beacon from any new switch node. A service nodemay select any switch node from the switch table and proceed with theregistration process with that switch node.

Base nodes are primarily responsible for setting up and maintaining thesubnetwork. The base node and all the switch nodes on the subnetworkbroadcast beacons at fixed intervals of time. The base node alwaystransmits exactly one beacon per frame. Switch nodes transmit beaconswith a frequency prescribed by the base node.

The time in which a BPDU is transmitted is referred to as a beacon-slot.All beacon-slots are located at the beginning of a frame, as shown inFIG. 6. A beacon protocol data unit (BPDU) is transmitted in every frameby the base node. The base node BPDU is transmitted at a regularintervals equivalent to MACFrameLength—MACBeaconLength. The switch nodesalso transmit BPDUs to maintain their connections within the subnet.They switch nodes also transmit BPDUs at regular times. The switch nodeis not required to transmit its BPDU in every frame. However, the switchnode must transmit at least once within a superframe.

The first beacon-slot in every frame is reserved for the base node. Thenumber of beacon-slots in a frame may change from one frame to anotherand is indicated by the base node in its BPDU. The switch nodes areallocated a beacon-slot at the time of their promotion from servicenode. With the registration of each new switch node on the subnet, thebase node may change the beacon-slot and/or transmission frequency ofalready registered switch nodes.

During the reorganization of beacon-slots, if there is a change in thebeacon-slot count per frame, the base node should transmit a framecontrol packet to the entire subnetwork. The frame control packet is anindication of change in the overall frame structure, such as changes inthe number of beacon, SCP, or CFP slots. Switch nodes that receive aframe control packet relay it to all connected nodes. This is requiredfor the entire subnetwork to have a common understanding of framestructure, especially in regions where a controlling switch nodetransmits BPDUs at frequencies less frequently than once per frame.

The beacon slot allocation policy ensure that during promotion a servicenode is never assigned to transmit a beacon in a slot consecutive tobeacons from the node to which it is registered. For example, switchnodes in level 1, which are directly connected to the base node, do nottransmit beacons in slot 1 because it is directly adjacent to the basenode's beacons in slot 0.

When changing the frame structure, to add or remove beacon slots, or tochange which beacon slot that a switch node should use, it is necessaryto indicate when such a change should occur. All nodes must change atthe same time otherwise there may be collisions with the beaconstransmitted by different nodes. A beacon superframe comprises thirty-twoframes. Each beacon contains a five-bit sequence number. Any messagesthat contain changes to the structure or usage of the frame include asequence number identifying when the change should occur. The changesrequested should only happen when the beacon sequence number matches thesequence number in the change request.

A beacon slot allocation algorithm may be used to assign beacon slots toswitch nodes in the subnetwork. In one embodiment, the number of beaconslots is set to five (assigned as slots 0, 1, 2, 3, and 4). It will beunderstood that a different numbers of beacon slots may be used in otherembodiments.

The first slot (slot 0) is used only for base node beacons, which aretransmitted in every frame. The switch nodes are not assigned to thefirst slot to ensure that there is no interference with the base nodebeacons. The switch nodes receive the base node beacons in each frame.The switch nodes should not be assigned slot 1 to provide time for theswitch nodes to transition from receiver (of the base node beacon inslot 0) to transmitter (of their own beacon) in the assigned slot.Similarly, the switch nodes should not be assigned a beacon slot that isadjacent to the slot used by a parent or child switch node to allow timefor each switch node to transition between transmitter and receiverstates.

Referring to FIG. 5, for example, if base node 501 transmits in slot 0,then switch node 502 may transmit its beacon in slots 2, 3, or 4, butnot slot 1. However, switch node 507 also must not transmit its beaconin a slot adjacent to the beacon slot assigned to switch node 502. So,if switch node 502 transmits in slot 2, then switch node 507 can onlytransmit in beacon slot 4 in the same frame.

In an example beacon assignment algorithm, all switch nodes use afrequency of four for beacon transmissions, which means that the switchnodes each transmit a beacon once every sixteen frames. This ensures atleast two beacons per switch node per superframe. The switch nodes areassigned non-overlapping slots and/or patterns as much as possible.

For up to thirty-two switch nodes, the nodes are guaranteed to have anon-overlapping slot or pattern by choosing slots 2 and 4. Sixteenswitch nodes can be accommodated by using each slot with a frequency offour. Since each switch node will be assigned a different slot orpattern, it is guaranteed that the first thirty-two switches will haveno overlapping pattern at any point of time.

FIG. 7 illustrates an example distribution of thirty-two switch nodesusing slots 2 and 4. The base node transmits in slot 0 in all frames.The switch nodes are assigned sequentially to slots 2 and 4 withoutregard to the level of each switch node. As illustrated, it takessixteen frames for each switch node to transmit one beacon in thismanner. By repeating the pattern again, each switch node may transmittwo beacons during a thirty-two-frame superframe.

If the subnetwork has more than thirty-two switch nodes, then thealgorithm must be modified. The algorithm determines the slot,frequency, and sequence of the beacon-slot assignment as follows:

-   -   Any switch node belonging to level 1 is assigned slot 3 with a        frequency of four. This avoids border interference with the base        node beacon in slot 0 and allows for turnaround processing.    -   Any switch node belonging to level 2 or above can be assigned to        slot 1 (if available) or slot 3. Slot 1 is available to the        switch nodes on level 2 or higher because they are not directly        connected to the base node on level 0. Instead, the switch nodes        on levels 2 or higher receive a beacon in slot 3 from a switch        node on level 1.    -   The parent-child switch node relationship is preserved by        ensuring that a child switch node transmits either in a        different slot (while maintaining a one-gap slot separation if        using the same pattern) and/or in a different pattern than its        parent switch node.

This will allow for accommodating up to sixty-four switch nodes withcare to avoid interference between parent-child switch nodes as much aspossible.

For subnetworks with more than sixty-four switch nodes, the availableslots may be reused. For example, the algorithm may adopt ann-level—such as a 2-level—separation rule. When a new switch node isadded to the subnetwork, the beacon allocation algorithm ensures that itre-uses the first available slot that is used by a switch node that isn-levels away—either n-levels above as a grandparent or n-levels belowas a grandchild—of the new switch node. This allows for new switch nodesto cause minimal interference to the already existing switch node.

The parent-child relationship is preserved in these larger thansixty-four switch node systems by ensuring that the switch nodestransmit in different slots (separated by one slot if using the samepattern) and/or in a different pattern.

FIG. 8 illustrates a portion of a subnetwork 800 having more thanthirty-two switch nodes, including base node 801 and service nodes802-813 spread across three levels. Each switch node 802-813 may supportmultiple service nodes (not shown).

FIG. 9 is a table illustrating how switch nodes on multiple levels, suchas the switch nodes in FIG. 8, can be distributed to support more thanthirty-two switch nodes. This example assignment allows switch nodes onthe same level to maintain separation from their parent node. However,switch nodes on the same level may transmit at the same time on the sameslot if they have different parent nodes. For example, nodes 809, 810,and 811 may use the same slot and frame assignment because their beaconswill not be received by the same parent node.

FIG. 10 illustrates another example of a beacon slot allocation policyaccording to another embodiment using slot, time, and specialseparation. Slot separation allows two switch nodes to use differentslots within the same frame. Time separation allows two switch nodes touse the same or adjacent slots, but in different frames. Spatialseparation allows two switch nodes to use the same or adjacent slots inthe same frame if the nodes are separated by a certain number of levels.

Switch nodes 1 and 34 use slot separation to deconflict their beacontransmissions. Both nodes use the same sequence or pattern of beacontransmission in frames zero and sixteen, but switch node 1 transmits inslot 2 and switch node 34 transmits in slot 3. Both of these slotsmaintain at least one empty slot from the base node. However, switchnodes 1 and 34 transmit beacons to different groups of child nodes, sothe one-slot separation is not required for their transmissions.

Switch nodes 3 and 11 use time separation to deconflict their beacontransmissions. Both nodes are child nodes of switch node 2 and bothnodes are transmitting their beacon in slot 2. However, nodes 3 and 11are using different patterns for when they transmit. Node 3 transmitsbeacons in slots 2 and 18, while node 11 transmits beacons in slots 10and 26.

Switch nodes 33 and 35 use spatial separation to deconflict their beacontransmissions. Nodes 33 and 35 are on level 2, but have different parentnodes on level 1. Even if nodes 33 and 35 use the same slot and framesequence pattern to transmit beacons, the beacons will not conflictbecause the nodes are separate by at least two other nodes.

It will be understood that various operations illustrated in FIGS. 6and/or 7 may be executed simultaneously and/or sequentially. It will befurther understood that each operation may be performed in any order andmay be performed once or repetitiously. In various embodiments, theblocks shown in FIGS. 6 and/or 7 may represent sets of softwareroutines, logic functions, and/or data structures that are configured toperform specified operations. Although these modules are shown asdistinct logical blocks, in other embodiments at least some of theoperations performed by these modules may be combined in to fewerblocks. Conversely, any given one of the modules shown in in FIGS. 6and/or 7 may be implemented such that its operations are divided amongtwo or more logical blocks. Moreover, although shown with a particularconfiguration, in other embodiments these various modules may berearranged in other suitable ways.

Many of the operations described herein may be implemented in hardware,software, and/or firmware, and/or any combination thereof. Whenimplemented in software, code segments perform the necessary tasks oroperations. The program or code segments may be stored in aprocessor-readable, computer-readable, or machine-readable medium. Theprocessor-readable, computer-readable, or machine-readable medium mayinclude any device or medium that can store or transfer information.Examples of such a processor-readable medium include an electroniccircuit, a semiconductor memory device, a flash memory, a ROM, anerasable ROM (EROM), a floppy diskette, a compact disk, an optical disk,a hard disk, a fiber optic medium, etc.

Software code segments may be stored in any volatile or non-volatilestorage device, such as a hard drive, flash memory, solid state memory,optical disk, CD, DVD, computer program product, or other memory device,that provides tangible computer-readable or machine-readable storage fora processor or a middleware container service. In other embodiments, thememory may be a virtualization of several physical storage devices,wherein the physical storage devices are of the same or different kindsThe code segments may be downloaded or transferred from storage to aprocessor or container via an internal bus, another computer network,such as the Internet or an intranet, or via other wired or wirelessnetworks.

Many modifications and other embodiments of the invention(s) will cometo mind to one skilled in the art to which the invention(s) pertainhaving the benefit of the teachings presented in the foregoingdescriptions, and the associated drawings. Therefore, it is to beunderstood that the invention(s) are not to be limited to the specificembodiments disclosed. Although specific terms are employed herein, theyare used in a generic and descriptive sense only and not for purposes oflimitation.

1. A method, comprising: performing, by a communications device, assigning beacon transmission times to nodes within the communication device's network, the assigned beacon transmission times comprising a beacon slot and frame pattern, the beacon slot and frame pattern ensuring that each node does not transmit a beacon in a beacon slot that is adjacent to a beacon slot assigned to a parent or child node.
 2. The method of claim 1, further comprising: reserving a beacon transmission slot for a base node in every frame.
 3. The method of claim 1, further comprising: assigning every other slot in each frame to a different node until all nodes have a designated beacon transmission time.
 4. The method of claim 1, wherein groups of frames are organized into thirty-two-frame superframes, and wherein each frame comprises a base node beacon slot and four switch node beacon slots.
 5. The method of claim 4, further comprising: assigning a second switch node beacon slot and fourth switch node beacon slot in each frame to a different node until all nodes have a designated beacon transmission slot and pattern; and reserving a first switch node beacon slot and a third switch node beacon slot in each frame as unassigned.
 6. The method of claim 4, further comprising: assigning a third switch node beacon slot in each frame to a different node on a first level below the base node; reserving a first switch node beacon slot, a second switch node beacon slot, and a fourth switch node beacon slot in each frame as unassigned; and assigning a first switch node beacon slot and a third switch node beacon slot in each frame to a different node on a second level below the base node.
 7. The method of claim 6, wherein a parent node on the first level has a child node on the second level and both the parent node and the child node are assigned to a third switch node beacon slot, the method further comprising: assigned a first frame pattern to the parent node; assigning a second frame pattern to the child node, wherein the second frame pattern prevents the child node from transmitting a beacon in the same frame as the parent node.
 8. The method of claim 1, wherein the beacon slot and frame pattern of an assigned beacon transmission time has also been assigned to another node that is at least n-levels away, wherein n-levels comprises at least two-levels.
 9. The method of claim 1, further comprising: assigning a beacon slot number and a first sequence number to a parent node on a first level; assigning the beacon slot number and a second sequence number to a child node on a next level below the parent node, wherein the parent node and the child node transmit in a same beacon slot position, but the second sequence number causes the child node to transmit in a different frame pattern than the parent node.
 10. The method of claim 1, wherein the beacon slot and frame pattern assigned to a first node has also been assigned to a second node that is on the same level below the base node as the first node, and wherein the first node and the second node do not share a same parent node.
 11. A communications device comprising: a processor; and a memory coupled to the processor, the memory configured to store program instructions executable by the processor to cause the communications device to: assign a beacon slot and frame pattern for beacon transmission times to switch nodes within the communication device's network, the assigned beacon slot and frame pattern ensuring that each node does not transmit a beacon in a beacon slot that is adjacent to a beacon slot assigned to a parent or child node.
 12. The communication device of claim 11, the program instructions executable further causing the communications device to: assign every other slot in each frame to a different node until all nodes have a designated beacon transmission time.
 13. The communication device of claim 11, wherein groups of frames are organized into thirty-two-frame superframes, and wherein each frame comprises a base node beacon slot and four switch node beacon slots.
 14. The communication device of claim 11, the program instructions executable further causing the communications device to: assign a second switch node beacon slot and fourth switch node beacon slot in each frame to a different node until all nodes have a designated beacon transmission slot and pattern; and reserve a first switch node beacon slot and a third switch node beacon slot in each frame as unassigned.
 15. The communication device of claim 11, the program instructions executable further causing the communications device to: assign a third switch node beacon slot in each frame to a different node on a first level below the base node; reserve a first switch node beacon slot, a second switch node beacon slot, and a fourth switch node beacon slot in each frame as unassigned; and assign a first switch node beacon slot and a third switch node beacon slot in each frame to a different node on a second level below the base node.
 16. The communication device of claim 11, wherein both a parent node and a child node are assigned to a same beacon slot, the program instructions executable further causing the communications device to: assign a first frame pattern to the parent node; assign a second frame pattern to child node, wherein the second frame pattern prevents the child node from transmitting a beacon in the same frame as the parent node.
 17. The communication device of claim 11, wherein the beacon slot and frame pattern of an assigned beacon transmission time has also been assigned to another node that is at least two-levels away.
 18. The communication device of claim 11, wherein the beacon slot and frame pattern assigned to a first node has also been assigned to a second node that is on the same level below the base node as the first node, and wherein the first node and the second node do not share a same parent node.
 19. The communication device of claim 11, the program instructions executable further causing the communications device to: assign a beacon slot number and a first sequence number to a parent node on a first level; assign the beacon slot number and a second sequence number to a child node on a next level below the parent node, wherein the parent node and the child node transmit in a same beacon slot position, but the second sequence number causes the child node to transmit in a different frame pattern than the parent node.
 20. A computer-readable storage medium having program instructions stored thereon that, upon execution by a processor within a communications device, cause the communications device to: assign a beacon slot and frame pattern for beacon transmission times to switch nodes within the communication device's network, the assigned beacon slot and frame pattern ensuring that each node does not transmit a beacon in a beacon slot that is adjacent to a beacon slot assigned to a parent or child node.
 21. The computer-readable storage medium of claim 20, the program instructions further cause the device to: when there are no more than thirty-two switch nodes in a power line communication network: assign a second beacon slot and fourth beacon slot in each frame to a different node until all nodes have a designated beacon transmission slot and pattern; and reserve a first beacon slot and a third beacon slot in each frame as unassigned; when there are no more than sixty-four switch nodes in the power line communication network: assign a third beacon slot in each frame to a different node on a first level below the base node; reserve a first beacon slot, a second beacon slot, and a fourth beacon slot in each frame as unassigned; and assign a first beacon slot and a third beacon slot in each frame to a different node on a second level below the base node, wherein when both a parent node and a child node are assigned to a same beacon slot, the parent node is assigned a first frame pattern and the child node is assigned a second frame, wherein the second frame pattern prevents the child node from transmitting a beacon in the same frame as the parent node; and when there are more than sixty-four switch nodes in the power line communication network: reusing a selected beacon slot and frame pattern for a node that is at least two-levels away from other nodes using the same beacon slot and frame pattern. 